home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Franz PD / Franz PD Disk #061 (1990-04)(Amiga User Group Deutschland e.V.).zip / Franz PD Disk #061 (1990-04)(Amiga User Group Deutschland e.V.).adf / SDL / SDL (.txt) < prev    next >
AmigaBASIC Source Code  |  1989-07-02  |  11KB  |  516 lines

  1. LIBRARY "intuition.library"
  2. LIBRARY "graphics.library"
  3. DECLARE FUNCTION DisplayAlert& LIBRARY
  4. DECLARE FUNCTION SetSoftStyle% LIBRARY
  5. DECLARE FUNCTION AskSoftStyle% LIBRARY
  6. SCREEN 2,640,256,4,2
  7. WINDOW 2,"",,0,2
  8. PALETTE 0,0,0,0
  9. PALETTE 2,0.15,0.2,0.87
  10. PALETTE 3,0.47,0.87,1
  11. PALETTE 4,0.93,0.2,0
  12. PALETTE 5,0.5,1,0
  13. PALETTE 6,0.15,0.15,0.15
  14. PALETTE 7,0.2,0.2,0.2
  15. PALETTE 8,0.25,0.25,0.25
  16. PALETTE 9,0.3,0.3,0.3
  17. PALETTE 10,0.4,0.4,0.4
  18. PALETTE 11,0.5,0.5,0.5
  19. PALETTE 12,0.6,0.6,0.6
  20. PALETTE 13,0.7,0.7,0.7
  21. PALETTE 14,0.8,0.8,0.8
  22. Maske%=AskSoftStyle%(WINDOW(8))
  23. COLOR 0,0
  24. CLS
  25.  
  26. Anfang:
  27. z=z+1
  28. IF z=5 GOTO Hinweis1
  29. IF z=11 GOTO Hinweis2
  30. IF z=23 GOTO Hinweis3
  31. Anfang2:
  32. GOSUB d
  33. ON TIMER(60) GOSUB zeit
  34. TIMER ON
  35. LOCATE 15,8
  36. PRINT "Das wievielte Examen ist es ?"
  37. LINE(341,91)-(409,239),6,b
  38. LINE(342,92)-(408,238),7,b
  39. LINE(343,93)-(407,237),8,b
  40. LINE(344,94)-(406,236),9,b
  41. LINE(345,95)-(405,235),10,b
  42. LINE(346,96)-(404,234),11,b
  43. LINE(347,97)-(403,233),12,b
  44. LINE(348,98)-(402,232),13,b
  45. LINE(349,99)-(401,231),14,b
  46. LINE(350,100)-(400,230),5,bf
  47. LINE(350,100)-(400,230),0,b
  48. LINE(115,155)-(220,172),1,bf
  49. LINE(115,155)-(220,172),0,b
  50. LINE(114,154)-(221,172),14,b
  51. LINE(113,153)-(222,173),13,b
  52. LINE(112,152)-(223,174),12,b
  53. LINE(111,151)-(224,175),11,b
  54. LINE(110,150)-(225,176),10,b
  55. LINE(109,149)-(226,177),9,b
  56. LINE(108,148)-(227,178),8,b
  57. LINE(107,147)-(228,179),7,b
  58. LINE(106,146)-(229,180),6,b
  59. COLOR 2,1
  60. dummy%=SetSoftStyle%(WINDOW(8),2,Maske%)
  61. LOCATE 21,17 : PRINT "Nummer:"
  62. dummy%=SetSoftStyle%(WINDOW(8),0,Maske%)
  63. COLOR 4,1
  64. Maus3:
  65. v = MOUSE(0)
  66. x = MOUSE(1)
  67. y = MOUSE(2)
  68. y2 = FIX(y/6)-16
  69. WHILE MOUSE(0) = 0 : WEND
  70. IF x>350 AND x<400 AND y>100 AND y<230 THEN GOTO Regeln
  71. GOTO Maus3
  72. Regeln:
  73. LINE(351,101)-(399,229),5,bf
  74. LINE(352,y)-(398,y),0,bf
  75. LOCATE 21,24 : PRINT y2
  76. IF MOUSE(0) < 0 THEN GOTO Maus3
  77. TIMER OFF
  78. COLOR 1,0
  79. IF (y2<1) OR (y2>22) THEN GOTO Anfang2
  80. ON y2 GOSUB 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22
  81.  
  82. 1 GOSUB d
  83. GOSUB a
  84. PRINT "WELCHER BEKANNTE TEMPEL DER KUNST WURDE"
  85. LOCATE 14,3
  86. PRINT "IN DEM APPARMENT ERWÄHNT ?"
  87. GOSUB b
  88. PRINT "NATIONAL THEATRE GALLERY"
  89. GOSUB c
  90. 2 GOSUB d
  91. GOSUB a
  92. PRINT "WELCHES BEDEUTENDE FEST FEIERTE MAN AN"
  93. LOCATE 14,3
  94. PRINT "CHRISTINES ERSTEN TAG IN SINGAPUR ?"
  95. GOSUB b
  96. PRINT "CHINESE NEW YEAR"
  97. GOSUB c 
  98. 3 GOSUB d
  99. GOSUB a
  100. PRINT "WAS WÜRDEST DU IN DIESER LAGE AN DER STELLE"
  101. LOCATE 14,3
  102. PRINT "DER BEIDEN TUN ?"
  103. GOSUB b
  104. PRINT "HÖFLICH WEITERFRAGEN"
  105. GOSUB c
  106. 4 GOSUB d
  107. GOSUB a
  108. PRINT "TIPPE DIE NUMMER DES LION CITY HOTELS"
  109. LOCATE 14,3
  110. PRINT "IN DAS TELEPHON."
  111. GOSUB b
  112. PRINT "DIE NUMMER STEHT IN DER ANLEITUNG ( S. 5 )."
  113. GOSUB c
  114. 5 GOSUB d
  115. GOSUB a
  116. PRINT "DER JEEP, DEN DU GEMIETEST HAST, HAT DAS KENNZEICHEN"
  117. LOCATE 14,3
  118. PRINT "MCP MIT DER NUMMER ... ?"
  119. GOSUB b
  120. PRINT "MCP 7134"
  121. GOSUB c
  122. 6 GOSUB d
  123. GOSUB a
  124. PRINT "AN EINEM GROSSEN GEBÄUDE IN DER PHILLIP STREET"
  125. LOCATE 14,3
  126. PRINT "STIEGEN SIE AUS."
  127. GOSUB b
  128. PRINT "AM MATTERHORN BUILDING"
  129. GOSUB c
  130. 7 GOSUB d
  131. GOSUB a
  132. PRINT "OHNE DIE ANWESENHEIT DES MEISTERS BIST DU NUN"
  133. LOCATE 14,3
  134. PRINT "AUF DICH ALLEIN GESTELLT."
  135. GOSUB b
  136. PRINT "AUF DIE RONIN WARTEN"
  137. GOSUB c
  138. 8 GOSUB d
  139. GOSUB a
  140. PRINT "...DANN WEISST DU IN WELCHE RICHTUNG DU FAHREN MUSST."
  141. GOSUB b
  142. PRINT "NÖRDLICH"
  143. GOSUB c
  144. 9 GOSUB d
  145. GOSUB a
  146. PRINT "EINE GEFÄHRLICHE UND AUCH KRITISCHE SITUATION ... "
  147. GOSUB b
  148. PRINT "MIT WAFFEN DROHEN"
  149. GOSUB c
  150. 10 GOSUB d
  151. GOSUB a
  152. PRINT "WAS UND WIEVIEL SOLLST DU SAGEN, DAMIT DU DEINE"
  153. LOCATE 14,3
  154. PRINT "PRÜFUNG BESTEHST, ABER DIE RONIN NICHT ALLEIN"
  155. LOCATE 15,3
  156. PRINT "WEITERMACHEN ?"
  157. GOSUB b
  158. PRINT "TEILWEISE INFORMIEREN"
  159. GOSUB c
  160. 11 GOSUB d
  161. GOSUB a
  162. PRINT "AUFGEBEN - WARTEN - ANSCLEICHEN - ANGRIFF"
  163. GOSUB b
  164. PRINT "VOLLE PULLE NACH RECHTS"
  165. GOSUB c
  166. 12 GOSUB d
  167. GOSUB a
  168. PRINT "HE, CHING, WIE HIESS DENN GLEICH WIEDER DEIN RIESIGER MAAT ?"
  169. GOSUB b
  170. PRINT "MUBANGA"
  171. GOSUB c
  172. 13 GOSUB d
  173. GOSUB a
  174. PRINT "SIE MUSSTEN RASCH AKTIV EINGREIFEN,"
  175. LOCATE 14,3
  176. PRINT "FRAGEN UND SUCHEN."
  177. GOSUB b
  178. PRINT "DIEBSTAHLANZEIGE"
  179. GOSUB c
  180. 14 GOSUB d
  181. GOSUB a
  182. PRINT "...ALLERDINGS BESTAND SIE AUF ´KLEINES HERZ´."
  183. GOSUB b
  184. PRINT "DIM SUM AUS KANTON"
  185. GOSUB c
  186. 15 GOSUB d
  187. GOSUB a
  188. PRINT "TAIKO ÜBERLEGTE, WIE ODER WAS ER HEUTE, MORGEN"
  189. LOCATE 14,3
  190. PRINT "ODER GAR DIE NÄCHSTEN TAGE MIT IHR TUN SOLLTE."
  191. GOSUB b
  192. PRINT "GILL SUN DANACH FRAGEN"
  193. GOSUB c
  194. 16 GOSUB d
  195. GOSUB a
  196. PRINT "ER WOHNT IN DER UPPER SERANGOON ROAD,"
  197. LOCATE 14,3
  198. PRINT "NÄHE ..."
  199. GOSUB b
  200. PRINT "CROCODILE FARM"
  201. GOSUB c
  202. 17 GOSUB d
  203. GOSUB a
  204. PRINT "ES WAR DER ... FEBRUAR DES JAHRES 1942."
  205. GOSUB b
  206. PRINT "FÜNFZEHNTE"
  207. GOSUB c
  208. 18 GOSUB d
  209. GOSUB a
  210. PRINT "WAS IST DAS (BIG SPLASH) ?
  211. GOSUB b
  212. PRINT "SCHWIMMBAD"
  213. GOSUB c
  214. 19 GOSUB d
  215. GOSUB a
  216. PRINT "DOCH WAS TUN WIR ALS NÄCHSTES, UM IHN ZU FINDEN ?"
  217. GOSUB b
  218. PRINT "WEITER NACHDENKEN"
  219. GOSUB c
  220. 20 GOSUB d
  221. GOSUB a
  222. PRINT "... UND SCHAUTE NACH, WELCHE NUMMER DER"
  223. LOCATE 14,3
  224. PRINT "HALTEPUNKT REDHILL HATTE."
  225. GOSUB b
  226. PRINT "W4"
  227. GOSUB c
  228. 21 GOSUB d
  229. GOSUB a
  230. PRINT "INSEL VERLASSEN - INS BETT - UNSICHERHEIT - HAFEN"
  231. GOSUB b
  232. PRINT "2 NACH RECHTS"
  233. GOSUB c
  234. 22 GOSUB d
  235. GOSUB a
  236. PRINT "BIST DU BEREIT FÜR DEIN VATERLAND ZU STERBEN ?"
  237. GOSUB b
  238. PRINT "JA ICH WERDE ES TUN"
  239. GOSUB c
  240.   
  241. a:
  242. LOCATE 13,3
  243. COLOR 2,0
  244. RETURN
  245.  
  246. b:
  247. LOCATE 18,3
  248. COLOR 4,0
  249. PRINT "Ist das Dein Problem ? "
  250. LINE(303,220)-(363,239),9,bf
  251. LINE(300,217)-(360,236),5,bf
  252. LINE(395,220)-(455,239),9,bf
  253. LINE(392,217)-(452,236),4,bf
  254. dummy%=SetSoftStyle%(WINDOW(8),2,Maske%)
  255. COLOR 0,5
  256. LOCATE 29,41 : PRINT "JA"
  257. COLOR 1,4
  258. LOCATE 29,52 : PRINT "NEIN"
  259. dummy%=SetSoftStyle%(WINDOW(8),0,Maske%)
  260. Maus2:
  261. WHILE 1
  262. v = MOUSE(0)
  263. IF MOUSE(0) =0 THEN WEND
  264. CALL Maus(x,y)
  265. IF x<300 OR x>360 AND x<392 THEN GOTO Maus2
  266. IF y<217 OR y>236 THEN GOTO Maus2
  267. IF x<392 AND x>360 OR x>452 THEN GOTO Maus2
  268. IF x>392 AND x<452 THEN 
  269. COLOR 2,0
  270. GOTO Anfang2
  271. END IF
  272. COLOR 2,0
  273. LOCATE 21,3
  274. PRINT "Die richtige Wahl lautet:"
  275. LOCATE 21,29
  276. COLOR 1,0
  277. RETURN
  278.  
  279. c:
  280. FOR x=1 TO 5
  281. PRINT
  282. NEXT
  283. LINE(35,220)-(98,239),9,bf
  284. LINE(32,217)-(95,236),5,bf
  285. LINE(128,220)-(203,239),9,bf
  286. LINE(125,217)-(200,236),4,bf
  287. COLOR 0,5
  288. dummy%=SetSoftStyle%(WINDOW(8),2,Maske%)
  289. LOCATE 29,6: PRINT "WEITER"
  290. COLOR 1,4
  291. LOCATE 29,18: PRINT "ABBRUCH"
  292. dummy%=SetSoftStyle%(WINDOW(8),0,Maske%)
  293. Maus:
  294. WHILE 1
  295. v = MOUSE(0)
  296. IF MOUSE(0) = 0 THEN WEND
  297. CALL Maus(x,y)
  298. IF x<32 OR x>95 AND x<125 THEN GOTO Maus
  299. IF y<217 OR y>236 THEN GOTO Maus
  300. IF x<125 AND x>95 OR x>200 THEN GOTO Maus
  301. IF x>125 AND x<200 THEN GOTO Alertauf
  302. COLOR 1,0
  303. GOTO Anfang
  304. RETURN Anfang
  305. SUB Maus(x,y) STATIC
  306. x = MOUSE(1)
  307. y = MOUSE(2)
  308. END SUB
  309.  
  310. d:
  311. CLS
  312. LINE(0,0)-(640,1),6,bf
  313. LINE(0,2)-(640,4),7,bf
  314. LINE(0,5)-(640,7),8,bf
  315. LINE(0,8)-(640,10),9,bf
  316. LINE(0,11)-(640,13),10,bf
  317. LINE(0,14)-(640,16),11,bf
  318. LINE(0,17)-(640,19),12,bf
  319. LINE(0,20)-(640,23),13,bf
  320. LINE(0,24)-(640,31),14,bf
  321. LINE(0,32)-(640,35),13,bf
  322. LINE(0,36)-(640,38),12,bf
  323. LINE(0,39)-(640,41),11,bf
  324. LINE(0,42)-(640,44),10,bf
  325. LINE(0,45)-(640,47),9,bf
  326. LINE(0,48)-(640,50),8,bf
  327. LINE(0,51)-(640,53),7,bf
  328. LINE(0,54)-(640,55),6,bf
  329. COLOR 2,14
  330. LOCATE 4,11
  331. dummy%=SetSoftStyle%(WINDOW(8),2,Maske%)
  332. PRINT " DER ULTIMATIVE LÖSUNGSVORSCHLAG FÜR:     STADT DER LÖWEN "
  333. dummy%=SetSoftStyle%(WINDOW(8),0,Maske%)
  334. LOCATE 8,53
  335. COLOR 9,0
  336. PRINT "von  Stephan Kanoniczak"
  337. COLOR 2,0
  338. RETURN
  339.  
  340. Hinweis1:
  341. GOSUB d
  342. COLOR 4,0
  343. LOCATE 11,3
  344. PRINT "  Das war jetzt das fünfte mal hintereinander, daß Du auf"
  345. LOCATE 12,3
  346. PRINT "  diesen Lösungsvorschlag zurückgreifst."
  347. LOCATE 13,3
  348. PRINT "  Was is´ los ?"
  349. LINE(200,135)-(400,149),1,bf
  350. LINE (200,135)-(400,149),0,b
  351. LINE (205,142)-(395,142),0
  352. LINE (300,138)-(300,146),0
  353. LINE (248,138)-(248,146),0
  354. LINE (352,138)-(352,146),0
  355. LINE (250,140)-(300,144),4,bf
  356. LINE(199,134)-(401,150),14,b
  357. LINE(198,133)-(402,151),13,b
  358. LINE(197,132)-(403,152),12,b
  359. LINE(196,131)-(404,153),11,b
  360. LINE(195,130)-(405,154),10,b
  361. LINE(194,129)-(406,155),9,b
  362. LINE(193,128)-(407,156),8,b
  363. LINE(192,127)-(408,157),7,b
  364. LINE(191,126)-(409,158),6,b
  365. LOCATE 22,33
  366. COLOR 1,0
  367. PRINT "INTELLIGENZ"
  368. LINE(35,220)-(98,239),9,bf
  369. LINE(32,217)-(95,236),5,bf
  370. LINE(128,220)-(203,239),9,bf
  371. LINE(125,217)-(200,236),4,bf
  372. COLOR 0,5
  373. dummy%=SetSoftStyle%(WINDOW(8),2,Maske%)
  374. LOCATE 29,6: PRINT "WEITER"
  375. COLOR 1,4
  376. LOCATE 29,18: PRINT "ABBRUCH"
  377. dummy%=SetSoftStyle%(WINDOW(8),0,Maske%)
  378. Maus1:
  379. WHILE 1
  380. v = MOUSE(0)
  381. IF MOUSE(0) = 0 THEN WEND
  382. CALL Maus(x,y)
  383. IF x<32 OR x>95 AND x<125 THEN GOTO Maus1
  384. IF y<217 OR y>236 THEN GOTO Maus1
  385. IF x<125 AND x>95 OR x>200 THEN GOTO Maus1
  386. IF x>125 AND x<200 THEN GOTO Alertauf
  387. Ausgabe1:
  388. COLOR 1,0
  389. GOTO Anfang
  390.  
  391. Hinweis2:
  392. GOSUB d
  393. LOCATE 11,3
  394. COLOR 4,0
  395. PRINT "Das war jetzt das zehnte mal hintereinander, daß Du auf"
  396. LOCATE 12,3
  397. PRINT "diesen Lösungsvorschlag zurückgreifst."
  398. LOCATE 13,3
  399. PRINT "Spiel doch lieber Quartett !!!
  400. LINE(200,135)-(400,149),1,bf
  401. LINE (200,135)-(400,149),0,b
  402. LINE (205,142)-(395,142),0
  403. LINE (300,138)-(300,146),0
  404. LINE (248,138)-(248,146),0
  405. LINE (352,138)-(352,146),0
  406. LINE (220,140)-(300,144),4,bf
  407. LINE(199,134)-(401,150),14,b
  408. LINE(198,133)-(402,151),13,b
  409. LINE(197,132)-(403,152),12,b
  410. LINE(196,131)-(404,153),11,b
  411. LINE(195,130)-(405,154),10,b
  412. LINE(194,129)-(406,155),9,b
  413. LINE(193,128)-(407,156),8,b
  414. LINE(192,127)-(408,157),7,b
  415. LINE(191,126)-(409,158),6,b
  416. LOCATE 22,33
  417. COLOR 1,0
  418. PRINT "INTELLIGENZ"
  419. LINE(35,220)-(98,239),9,bf
  420. LINE(32,217)-(95,236),5,bf
  421. LINE(128,220)-(203,239),9,bf
  422. LINE(125,217)-(200,236),4,bf
  423. COLOR 0,5
  424. dummy%=SetSoftStyle%(WINDOW(8),2,Maske%)
  425. LOCATE 29,6: PRINT "WEITER"
  426. COLOR 1,4
  427. LOCATE 29,18: PRINT "ABBRUCH"
  428. dummy%=SetSoftStyle%(WINDOW(8),0,Maske%)
  429. GOTO Maus1
  430.  
  431. Hinweis3:
  432. GOSUB d
  433. LOCATE 10,3
  434. COLOR 4,0
  435. PRINT "Alles hat seine Grenzen, auch meine Geduld."
  436. LOCATE 11,3
  437. PRINT "Stadt-Der-Löwen besitzt 22 (in Worten: zweiundzwanzig) Examen."
  438. LOCATE 12,3
  439. PRINT "Du aber greifst zum 23ten mal auf dieses Programm zurück."
  440. LOCATE 13,3
  441. PRINT "Wer weiß wofür es gut ist - ICH WILL ES NICHT WISSEN. TSCHÜß"
  442. LINE(200,135)-(400,149),1,bf
  443. LINE (200,135)-(400,149),0,b
  444. LINE (205,142)-(395,142),0
  445. LINE (300,138)-(300,146),0
  446. LINE (248,138)-(248,146),0
  447. LINE (352,138)-(352,146),0
  448. LINE (201,140)-(300,144),4,bf
  449. LINE(199,134)-(401,150),14,b
  450. LINE(198,133)-(402,151),13,b
  451. LINE(197,132)-(403,152),12,b
  452. LINE(196,131)-(404,153),11,b
  453. LINE(195,130)-(405,154),10,b
  454. LINE(194,129)-(406,155),9,b
  455. LINE(193,128)-(407,156),8,b
  456. LINE(192,127)-(408,157),7,b
  457. LINE(191,126)-(409,158),6,b
  458. LOCATE 22,33
  459. COLOR 1,0
  460. PRINT "INTELLIGENZ"
  461. LINE(128,220)-(203,239),9,bf
  462. LINE(125,217)-(200,236),4,bf
  463. dummy%=SetSoftStyle%(WINDOW(8),2,Maske%)
  464. COLOR 1,4
  465. LOCATE 29,18: PRINT "ABBRUCH"
  466. dummy%=SetSoftStyle%(WINDOW(8),0,Maske%)
  467. Maus4:
  468. WHILE 1
  469. v = MOUSE(0)
  470. IF MOUSE(0) = 0 THEN WEND
  471. CALL Maus(x,y)
  472. IF y<217 OR y>236 THEN GOTO Maus4
  473. IF x<125 OR x>200 THEN GOTO Maus4
  474. CALL Alert
  475.  
  476. Alertauf:
  477. CALL Alert
  478. END
  479.  
  480. SUB Alert STATIC
  481. type&=-1 : hoehe%=200
  482. text$=CHR$(0)+CHR$(169)+CHR$(50)
  483. text$=text$+"Du hast es so gewollt, hier ist er:"
  484. text$=text$+CHR$(0)+CHR$(1)+CHR$(0)+CHR$(235)+CHR$(100)
  485. text$=text$+"DER PROGRAMMABBRUCH"
  486. text$=text$+CHR$(0)+CHR$(2)+CHR$(0)+CHR$(211)+CHR$(150)
  487. text$=text$+"Ultimativ und Entgültig"+CHR$(0)
  488. warten:
  489. taste&=DisplayAlert&(type&,SADD(text$),hoehe%)
  490. IF taste& <> 1 THEN warten
  491. END SUB
  492.  
  493. zeit:
  494. TIMER OFF
  495. SOUND 2000,50.4,255,1
  496. WAVE 1,SIN
  497. CALL Alert2
  498. COLOR 2,0
  499. GOTO Anfang2
  500. END
  501.  
  502. SUB Alert2 STATIC
  503. type&=0 : hoehe%=200
  504. text$=CHR$(0)+CHR$(170)+CHR$(50)
  505. text$=text$+"Ich habe nicht alle Zeit der Welt !!!"
  506. text$=text$+CHR$(0)+CHR$(1)+CHR$(0)+CHR$(70)+CHR$(100)
  507. text$=text$+"Du wirst doch wohl in einer Minute die Nummer eingeben können."
  508. text$=text$+CHR$(0)+CHR$(2)+CHR$(0)+CHR$(95)+CHR$(150)
  509. text$=text$+"Es gibt Freaks die drücken die linke Maustaste, Du auch ?"+CHR$(0)
  510. warten:
  511. taste&=DisplayAlert&(type&,SADD(text$),hoehe%)
  512. IF taste& <> 1 THEN warten
  513. END SUB
  514.  
  515.  
  516.